Java(TM) IDL 1.1 Early Access Release README +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Welcome to the Java IDL 1.1 Early Access release. Thank you for your interest in this product and for taking the time to download the software and documentation. This Early Access release of Java IDL is a preliminary release conforming to the proposed OMG Java IDL Specification. This specification is expected to be approved by the OMG in the near future. When using the JavaIDL 1.1 EA release, it is important to remember: - This release is not intended for production level development. - This release does not imply a commitment for any future product releases or any future product release dates. - This release does not imply any particular packaging or release mechanism if JavaIDL is released in the future. Included in this release are two examples, Hello World and Portfolio Manager. They can be found in the examples directory. This README file contains information about: Java IDL System Requirements Java IDL Installation Guide Java IDL Bug Report containing descriptions of known problems in this release +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Java IDL System Requirements +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ SPARC/Solaris Platform Solaris 2.3 or higher JDK 1.0.2 or higher To run Java IDL applets, one of: HotJava 1.0 or higher Netscape Navigator 3.0 or higher Microsoft Win32 Platforms Windows NT 3.5.1 or higher, or Windows 95 JDK 1.0.2 or higher Visual C++ 4.0 or higher To run Java IDL applets, one of: HotJava 1.0 or higher Netscape Navigator 3.0 or higher Microsoft Internet Explorer 3.0 or higher +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Java IDL Installation Guide +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1. These instructions assume that: - You have successfully downloaded Java IDL from the website. - If you are using the Solaris version, you have untarred the files. - If you are using the NT/Windows 95 version, you have executed JavaIDL.exe. - You have a JavaIDL installation directory, created by untarring or running JavaIDL.exe. Read these instructions carefully before beginning the installation. Be sure you know the location of the Java interpreter, the Java CLASSPATH, and the location of your JavaIDL installation directory. 2. Go to the "bin" directory of the "JavaIDL" directory: % cd JavaIDL % cd bin 3. Have the Java interpreter run the class installJavaIDL and answer the installation questions. Examples are given in step 4. The installJavaIDL program will ask for: - the location of the Java interpreter (i.e., the full path to the executable program), - the Java CLASSPATH to be used, and - the location of the JavaIDL installation. The installJavaIDL program will then create a startup script for the COS Name Server implementation (called "nameserv" for Solaris and "nameserv.bat" for Windows). The script will reside in the "bin" directory of the JavaIDL installation, and can be used to start the Name Server. 4. Installation Examples: The following installation scenarios assume that: -the Java interpreter can be found by searching the PATH (the actual name of the Java interpreter may vary, so substitute the real name for "java" where used below) - the CLASSPATH includes "." (the current directory). In the scenarios below, the cursor is shown as _ (underscore), comments are shown indented and in parentheses. 4.1 Solaris: For the example scenario, we are assuming that JDK is installed under "/opt/java", and that JavaIDL has been unpacked as "/opt/JavaIDL". % java installJavaIDL Welcome to the Installation of JavaIDL for Solaris. Enter full path to Java interpreter executable (JDK 1.0.2 or higher): _ (Type the full path to the Java Interpreter executable, e.g. "/opt/java/bin/java" and finish with RETURN. The full path must exist as a file, otherwise the installJavaIDL program will print out an error message and ask again for the full path.) (The installJavaIDL program will then attempt to guess a suitable CLASSPATH, based on the location of the Java Interpreter. If it can, it will display its guess in brackets [], and just hitting RETURN will select the guess.) Enter full Java classpath [/opt/java/lib/classes.zip]: _ (If the suggested classpath is correct, just hit RETURN. Otherwise, type in the correct CLASSPATH, which can be multiple PATHs separated by ':', and finish with RETURN.) (The installJavaIDL program will then attempt to guess the location of the JavaIDL installation. If it can, it will display its guess in brackets [], and just hitting RETURN will select the guess.) Enter JavaIdl Path [/opt/JavaIDL]: _ (If the suggested location is correct, just hit RETURN. Otherwise, type in the correct location of JavaIDL, and finish with RETURN. The installJavaIDL program then verifies the entered location; if it is not correct the program will prompt again for the correct location of the JavaIDL installation.) (The installJavaIDL program then prints out the selected paths to be used when generating the script for the Name Server.) Using: Java Interpreter: /opt/java/bin/java Java Classpath: /opt/java/lib/classes.zip JavaIDL Path: /opt/JavaIDL Generating script... Installation for Solaris complete. The script "/opt/JavaIDL/bin/nameserv" can be used to start the COS Name Server. (The installJavaIDL program indicates that the installation is complete, and prints out the name of the script that can be used to start the Name Server, in this case "/opt/JavaIDL/bin/nameserv"). ******** NOTE: There are two issues to keep in mind when running nameserv: 1. On Solaris, you must be root to run nameserv since it uses port 900 as the initial port by default. If this is not acceptable, a portnumber greater than 1023 must be specified (see note 2). 2. When starting the Name Server, if the default port is not acceptable, a different initial port number can be given with: nameserv -ORBInitialPort4.2 Windows NT: This example scenario assumes that JDK is installed under "c:\jdk", and that JavaIDL has been unpacked as "c:\JavaIDL". > java installJavaIDL Welcome to the Installation of JavaIDL for Windows NT. Enter full path to Java interpreter executable (JDK 1.0.2 or higher): _ (Type the full path to the Java Interpreter executable, e.g. "c:\jdk\bin\java" and finish with RETURN. The full path must exist as a file, or as a file with ".exe" or ".bat" appended to the name, otherwise the installJavaIDL program will print out an error message and ask again for the full path.) (The installJavaIDL program will then attempt to guess a suitable CLASSPATH, based on the location of the Java Interpreter. If it can, it will display its guess in brackets [], and just hitting RETURN will select the guess.) Enter full Java classpath [c:\jdk\lib\classes.zip]: _ (If the suggested classpath is correct, just hit RETURN. Otherwise, type in the correct CLASSPATH, which can be multiple PATHs separated by ';', and finish with RETURN.) (The installJavaIDL program will then attempt to guess the location of the JavaIDL installation. If it can, it will display its guess in brackets [], and just hitting RETURN will select the guess.) Enter JavaIdl Path [c:\JavaIDL]: _ (If the suggested location is correct, just hit RETURN. Otherwise, type in the correct location of JavaIDL, and finish with RETURN. The installJavaIDL program then verifies the entered location; if it is not correct the program will prompt again for the correct location of the JavaIDL installation. (The installJavaIDL program then prints out the selected paths to be used when generating the script for the Name Server.) Using: Java Interpreter: c:\jdk\bin\java Java Classpath: c:\jdk\lib\classes.zip JavaIDL Path: c:\JavaIDL Generating script... Installation for Windows NT complete. The script "c:\JavaIDL\bin\nameserv" can be used to start the COS Name Server. (The installJavaIDL program indicates that the installation is complete, and prints out the name of the script that can be used to start the Name Server, in this case "c:\JavaIDL\bin\nameserv"). +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Java IDL Bug Report +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ The following is a list of known bugs/limitations in the JavaIDL EA release. o The IDL to Java compiler does not handle declarations nested inside IDL structs, unions and exceptions. However, declarations can be nested inside IDL interfaces. o #pragma ID, and #pragma version are not supported; #pragma prefix can appear only at the global scope. o IDL module reopening is not supported by the IDL compiler. o Of the recently added type extensions to IDL, only longlong (signed and unsigned) is supported. o Multiple DII Request operations like send_multiple_requests_deferred, send_multiple_requests_oneway, poll_next_response, get_next_response are not supported. o DSI is not supported as it is under discussion as part of the ORB Enhanced Portability RFP. o Unions inside Any and Unions with boolean discriminators are not supported. o Recursive typecodes are not supported. o The Principal pseudo object has attribute "identity" instead of "name". o The "_request(String s)" operation on org.omg.CORBA.Object for DII support is missing. o The add_in_arg(), add_out_arg() and add_inout_arg() operations on org.omg.CORBA.Request that take a string argument should be called add_named_in_arg(), add_named_out_arg() and add_named_inout_arg(). o methods "except()" and "except(Exception e)" on org.omg.CORBA.Environment should both be called "exception" instead of "except"